Skip to content

refactor(fs): Prepare root filesystem in big leap before applying it globally#2389

Merged
mkroening merged 1 commit intohermit-os:mainfrom
fogti:factor-root-fs-big-leap
Apr 22, 2026
Merged

refactor(fs): Prepare root filesystem in big leap before applying it globally#2389
mkroening merged 1 commit intohermit-os:mainfrom
fogti:factor-root-fs-big-leap

Conversation

@fogti
Copy link
Copy Markdown
Contributor

@fogti fogti commented Apr 21, 2026

This is in preparation of implementing Hermit image later.

This is split from #2077 because I'm going to rewrite the rest of it later anyways, and want to integrate the already "fixed" parts beforehand.

…globally

This is in preparation of implementing Hermit image later.
@fogti fogti force-pushed the factor-root-fs-big-leap branch from f567b56 to 8140a12 Compare April 21, 2026 20:39
Copy link
Copy Markdown

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Benchmark Results

Details
Benchmark Current: 8140a12 Previous: ff4d8aa Performance Ratio
startup_benchmark Build Time 91.64 s 88.65 s 1.03
startup_benchmark File Size 0.80 MB 0.80 MB 1.01
Startup Time - 1 core 0.82 s (±0.03 s) 0.80 s (±0.03 s) 1.03
Startup Time - 2 cores 0.83 s (±0.03 s) 0.82 s (±0.03 s) 1.01
Startup Time - 4 cores 0.83 s (±0.03 s) 0.80 s (±0.03 s) 1.03
multithreaded_benchmark Build Time 88.53 s 91.97 s 0.96
multithreaded_benchmark File Size 0.91 MB 0.91 MB 1.00
Multithreaded Pi Efficiency - 2 Threads 89.85 % (±7.50 %) 88.33 % (±7.30 %) 1.02
Multithreaded Pi Efficiency - 4 Threads 45.13 % (±3.48 %) 44.41 % (±3.29 %) 1.02
Multithreaded Pi Efficiency - 8 Threads 25.75 % (±1.61 %) 25.67 % (±1.62 %) 1.00
micro_benchmarks Build Time 95.13 s 99.04 s 0.96
micro_benchmarks File Size 0.92 MB 0.92 MB 1.00
Scheduling time - 1 thread 69.93 ticks (±4.16 ticks) 72.99 ticks (±4.31 ticks) 0.96
Scheduling time - 2 threads 38.44 ticks (±6.07 ticks) 41.23 ticks (±5.31 ticks) 0.93
Micro - Time for syscall (getpid) 2.93 ticks (±0.24 ticks) 3.03 ticks (±0.23 ticks) 0.97
Memcpy speed - (built_in) block size 4096 78627.28 MByte/s (±54419.31 MByte/s) 79299.34 MByte/s (±54810.07 MByte/s) 0.99
Memcpy speed - (built_in) block size 1048576 29842.17 MByte/s (±24408.37 MByte/s) 30013.60 MByte/s (±24708.77 MByte/s) 0.99
Memcpy speed - (built_in) block size 16777216 28653.71 MByte/s (±23656.12 MByte/s) 25222.26 MByte/s (±21094.64 MByte/s) 1.14
Memset speed - (built_in) block size 4096 79242.20 MByte/s (±54824.93 MByte/s) 79810.02 MByte/s (±55149.92 MByte/s) 0.99
Memset speed - (built_in) block size 1048576 30578.12 MByte/s (±24826.56 MByte/s) 30778.10 MByte/s (±25134.71 MByte/s) 0.99
Memset speed - (built_in) block size 16777216 29411.07 MByte/s (±24087.29 MByte/s) 25985.16 MByte/s (±21584.28 MByte/s) 1.13
Memcpy speed - (rust) block size 4096 70791.37 MByte/s (±49484.43 MByte/s) 68203.23 MByte/s (±47725.10 MByte/s) 1.04
Memcpy speed - (rust) block size 1048576 29774.19 MByte/s (±24384.93 MByte/s) 30097.02 MByte/s (±24760.89 MByte/s) 0.99
Memcpy speed - (rust) block size 16777216 28607.90 MByte/s (±23646.35 MByte/s) 25063.67 MByte/s (±20908.24 MByte/s) 1.14
Memset speed - (rust) block size 4096 71138.86 MByte/s (±49684.39 MByte/s) 68682.88 MByte/s (±48106.91 MByte/s) 1.04
Memset speed - (rust) block size 1048576 30535.75 MByte/s (±24809.00 MByte/s) 30853.40 MByte/s (±25191.61 MByte/s) 0.99
Memset speed - (rust) block size 16777216 29374.09 MByte/s (±24086.96 MByte/s) 25772.54 MByte/s (±21346.60 MByte/s) 1.14
alloc_benchmarks Build Time 93.06 s 92.36 s 1.01
alloc_benchmarks File Size 0.87 MB 0.87 MB 1.01
Allocations - Allocation success 100.00 % 100.00 % 1
Allocations - Deallocation success 100.00 % 100.00 % 1
Allocations - Pre-fail Allocations 100.00 % 100.00 % 1
Allocations - Average Allocation time 7345.70 Ticks (±729.74 Ticks) 8085.64 Ticks (±113.86 Ticks) 0.91
Allocations - Average Allocation time (no fail) 7345.70 Ticks (±729.74 Ticks) 8085.64 Ticks (±113.86 Ticks) 0.91
Allocations - Average Deallocation time 1693.06 Ticks (±834.32 Ticks) 970.29 Ticks (±140.27 Ticks) 1.74
mutex_benchmark Build Time 95.13 s 94.79 s 1.00
mutex_benchmark File Size 0.92 MB 0.92 MB 1.00
Mutex Stress Test Average Time per Iteration - 1 Threads 13.28 ns (±0.78 ns) 13.40 ns (±0.72 ns) 0.99
Mutex Stress Test Average Time per Iteration - 2 Threads 17.84 ns (±2.48 ns) 20.02 ns (±16.69 ns) 0.89

This comment was automatically generated by workflow using github-action-benchmark.

Copy link
Copy Markdown
Member

@mkroening mkroening left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! :)

@mkroening mkroening added this pull request to the merge queue Apr 22, 2026
Merged via the queue into hermit-os:main with commit 1677256 Apr 22, 2026
20 checks passed
@fogti fogti deleted the factor-root-fs-big-leap branch April 22, 2026 07:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants